home *** CD-ROM | disk | FTP | other *** search
- package
- {
- import assets.screens.*;
- import flash.display.*;
- import flash.events.*;
- import flash.geom.Point;
- import flash.net.*;
- import flash.system.Security;
-
- public class skateEngine extends MovieClip
- {
-
-
- public var pp:Point;
-
- public var accl:Number = 1;
-
- public var course:Number = 1;
-
- private var keyLT:Boolean = false;
-
- public var topspd:Number = 20;
-
- public var c1lock:Boolean = false;
-
- public var scope:Object;
-
- public var gravity:Number = 1;
-
- public var screen:Sprite;
-
- public var swHighScoreObject:*;
-
- public var scene:Object;
-
- public var stats:*;
-
- public var decl:Number = 0.5;
-
- public var vx:Number = 0;
-
- public var vy:Number = 0;
-
- public var indyInit:Boolean = false;
-
- public var c4lock:Boolean = true;
-
- private var keyRT:Boolean = false;
-
- public var player:Object;
-
- public var hub:Loader;
-
- public var friction:Number = 0.1;
-
- private var keySH:Boolean = false;
-
- private var keySP:Boolean = false;
-
- public var medic1:MovieClip;
-
- public var sound:Object;
-
- private var keyDN:Boolean = false;
-
- private var keyUP:Boolean = false;
-
- public var ollieInit:Boolean = false;
-
- public var c3lock:Boolean = true;
-
- public var methodInit:Boolean = false;
-
- public var HSLOAD_ID:Number = 0;
-
- public var key1:Boolean = false;
-
- public var key2:Boolean = false;
-
- public var key3:Boolean = false;
-
- public var key4:Boolean = false;
-
- public var key5:Boolean = false;
-
- public var c2lock:Boolean = true;
-
- public function skateEngine()
- {
- key1 = false;
- key2 = false;
- key3 = false;
- key4 = false;
- key5 = false;
- keyUP = false;
- keyLT = false;
- keyDN = false;
- keyRT = false;
- keySP = false;
- keySH = false;
- pp = new Point(350,200);
- course = 1;
- c1lock = false;
- c2lock = true;
- c3lock = true;
- c4lock = true;
- vx = 0;
- vy = 0;
- gravity = 1;
- friction = 0.1;
- accl = 1;
- decl = 0.5;
- topspd = 20;
- screen = new Sprite();
- stats = new screen_stats(this);
- ollieInit = false;
- methodInit = false;
- indyInit = false;
- hub = new Loader();
- swHighScoreObject = new Object();
- HSLOAD_ID = 0;
- super();
- scope = this;
- scene = new sceneEngine(scope);
- sound = new soundEngine(scope);
- player = new playerEngine(scope);
- player.setPlayer();
- sound.startSound("bg",0,9999,0.5,0);
- stats.resetStats();
- setScreen(0);
- }
-
- private function loadHub() : *
- {
- var _loc1_:* = undefined;
- var _loc2_:URLRequest = null;
- Security.allowDomain("shockwave.com","intranet.shockwave.com","gameblast.shockwave.com","www.shockwave.com","dev.shockwave.com","stage.shockwave.com");
- swHighScoreObject = {
- "showTab":"submit",
- "gameId":null,
- "gameTitle":null,
- "screenWidth":700,
- "screenHeight":400,
- "scoreDescriptor":"points",
- "numPlayers":1,
- "player1Score":0
- };
- swHighScoreObject.gameId = "streetskater";
- swHighScoreObject.gameTitle = "StreetSkater";
- swHighScoreObject.player1Score = stats.score;
- _loc1_ = "http://www.shockwave.com/content/highscores/scorez-2002.swf";
- _loc2_ = new URLRequest(_loc1_);
- hub.load(_loc2_);
- addChild(hub);
- }
-
- public function foreSwap() : *
- {
- swapChildren(player.skater,scene.foreground);
- }
-
- public function gameReset() : *
- {
- var _loc1_:DisplayObject = null;
- var _loc2_:uint = 0;
- stats.resetStats();
- scene.resetScene();
- _loc2_ = 0;
- while(_loc2_ < this.numChildren)
- {
- _loc1_ = this.getChildAt(_loc2_);
- if(this.getChildAt(_loc2_) is DisplayObjectContainer)
- {
- this.removeChild(_loc1_);
- }
- _loc2_++;
- }
- setScreen(0);
- }
-
- public function playAgain() : *
- {
- hub.unload();
- removeChild(hub);
- trace("done");
- }
-
- private function keyRelease(param1:KeyboardEvent) : void
- {
- switch(param1.keyCode)
- {
- case 65:
- key1 = false;
- break;
- case 83:
- key2 = false;
- break;
- case 68:
- key3 = false;
- break;
- case 70:
- key4 = false;
- break;
- case 71:
- key5 = false;
- break;
- case 38:
- keyUP = false;
- break;
- case 37:
- keyLT = false;
- break;
- case 39:
- keyRT = false;
- break;
- case 40:
- keyDN = false;
- break;
- case 32:
- keySP = false;
- break;
- case 16:
- keySH = false;
- }
- }
-
- public function gameContinue() : *
- {
- var _loc1_:DisplayObject = null;
- var _loc2_:uint = 0;
- scene.resetScene();
- if(scope["c" + (course + 1) + "lock"])
- {
- scope["c" + (course + 1) + "lock"] = false;
- }
- trace(course + ":" + scope["c" + (course + 1) + "lock"]);
- _loc2_ = 0;
- while(_loc2_ < this.numChildren)
- {
- _loc1_ = this.getChildAt(_loc2_);
- if(this.getChildAt(_loc2_) is DisplayObjectContainer)
- {
- this.removeChild(_loc1_);
- }
- _loc2_++;
- }
- setScreen(2);
- }
-
- public function levelComplete() : *
- {
- control(false);
- sound.stopSound("roll");
- stats.courseCompleteMenu(true);
- }
-
- private function activate(param1:Event) : *
- {
- if(stats.action)
- {
- if(player.action)
- {
- process_keys();
- }
- scene.process();
- player.process();
- stats.process();
- }
- }
-
- private function mouseControl(param1:Event) : *
- {
- stage.focus = this;
- }
-
- public function setCourse() : *
- {
- removeChild(screen);
- scene.setScene();
- addChild(player.shad);
- addChild(player.skater);
- addChild(player.skaterFX);
- player.setPlayer();
- player.resetCharacter();
- ollieInit = false;
- methodInit = false;
- indyInit = false;
- addChild(scene.foreground);
- addChild(stats);
- control(true);
- }
-
- public function gameComplete() : *
- {
- control(false);
- sound.stopSound("roll");
- stats.clearTrickFX(true);
- player.tscore = stats.score;
- stats.initTrickFX("gameover");
- medic1 = new ambulance();
- medic1.x = 280;
- medic1.y = 410;
- addChildAt(medic1,numChildren - 2);
- }
-
- public function submitScore() : *
- {
- trace("submit click");
- }
-
- public function control(param1:*) : *
- {
- switch(param1)
- {
- case true:
- stage.focus = this;
- addEventListener(Event.ENTER_FRAME,activate);
- addEventListener(KeyboardEvent.KEY_DOWN,keyCapture);
- addEventListener(KeyboardEvent.KEY_UP,keyRelease);
- addEventListener(MouseEvent.CLICK,mouseControl);
- break;
- case false:
- removeEventListener(Event.ENTER_FRAME,activate);
- removeEventListener(KeyboardEvent.KEY_DOWN,keyCapture);
- removeEventListener(KeyboardEvent.KEY_UP,keyRelease);
- removeEventListener(MouseEvent.CLICK,mouseControl);
- }
- }
-
- public function setScreen(param1:*) : *
- {
- if(screen.numChildren > 0)
- {
- screen.removeChildAt(0);
- }
- switch(param1)
- {
- case 0:
- screen.addChild(new screen_splash(this));
- break;
- case 1:
- screen.addChild(new screen_learn(this));
- break;
- case 2:
- screen.addChild(new screen_select(this));
- break;
- case 3:
- addChild(stats);
- setCourse();
- }
- addChild(screen);
- }
-
- private function process_keys() : *
- {
- if(keyRT && player.smode == 0)
- {
- if(vx + accl < topspd)
- {
- vx += accl;
- }
- else
- {
- vx = topspd;
- }
- if(!player.pump)
- {
- stats.updateStamina(-10);
- player.skater.gotoAndPlay("pump");
- player.pump = true;
- }
- }
- else if(player.smode == 3)
- {
- if(vx - friction / 2 > 0)
- {
- vx -= friction / 2;
- }
- else
- {
- vx = 0;
- }
- }
- else if(vx - friction > 0)
- {
- vx -= friction;
- }
- else
- {
- vx = 0;
- }
- if(keyLT && player.smode == 0)
- {
- if(vx - decl > 0)
- {
- vx -= decl;
- }
- else
- {
- vx = 0;
- }
- }
- if(keyUP && vx > 0 && player.smode == 0)
- {
- if(player.skater.y > 335)
- {
- --player.skater.y;
- player.skater.rotation = -3;
- }
- else
- {
- player.skater.y = 335;
- player.skater.rotation = 0;
- }
- }
- if(keyDN && vx > 0 && player.smode == 0)
- {
- if(player.skater.y < 365)
- {
- ++player.skater.y;
- player.skater.rotation = 8;
- }
- else
- {
- player.skater.y = 365;
- player.skater.rotation = 0;
- }
- }
- if(!keyUP && !keyDN)
- {
- player.skater.rotation = 0;
- }
- if(keySP && player.contact && stats.stamina > 0.25 && !ollieInit)
- {
- ollieInit = true;
- stats.updateStamina(-15);
- player.skater.gotoAndPlay("ollie");
- stats.clearTrickFX(true);
- }
- if(key3 && player.contact && stats.stamina > 0.25)
- {
- sound.startSound("ollie",0,0,0.25,0);
- sound.setVolume("roll",0);
- player.skater.gotoAndPlay("kickflip");
- player.contact = false;
- player.smode = 4;
- vy = 7;
- if(player.skater.y < player.base)
- {
- player.tscore = 100;
- }
- else
- {
- player.tscore = 50;
- }
- stats.initTrickFX("kickflip");
- }
- if(key4 && !player.contact && stats.stamina > 0.25 && !indyInit)
- {
- indyInit = true;
- player.skater.gotoAndPlay("indy360");
- sound.setVolume("roll",0);
- player.airTime = true;
- player.smode = 5;
- player.tscore = 1000;
- stats.initTrickFX("indy360");
- }
- if(key5 && !player.contact && stats.stamina > 0.25 && !methodInit)
- {
- methodInit = true;
- player.skater.gotoAndPlay("methodAir");
- player.airTime = true;
- player.smode = 6;
- player.tscore = 250;
- stats.initTrickFX("methodAir");
- }
- }
-
- private function keyCapture(param1:KeyboardEvent) : void
- {
- switch(param1.keyCode)
- {
- case 65:
- key1 = true;
- break;
- case 83:
- key2 = true;
- break;
- case 68:
- key3 = true;
- break;
- case 70:
- key4 = true;
- break;
- case 71:
- key5 = true;
- break;
- case 38:
- keyUP = true;
- break;
- case 37:
- keyLT = true;
- break;
- case 39:
- keyRT = true;
- break;
- case 40:
- keyDN = true;
- break;
- case 32:
- keySP = true;
- break;
- case 16:
- keySH = true;
- }
- }
- }
- }
-